<template>
	<text :class="weight ? 'semiBold' : 'regular'">
		<text class="intPrice" :style="{'font-size': intSize +'rpx'}">
			<text :style="{'font-size': labelSize +'rpx'}" class="normal" :class="{'font600' : coupon}">¥</text>
		{{ intPrice }}</text>
		<text v-if="coupon" class="floatPrice" :style="{'font-size': floatSize +'rpx'}">{{ couponPrice }}</text>
		<text v-else-if="floatPrice!='.00'" class="floatPrice" :style="{'font-size': floatSize +'rpx'}">{{floatPrice!='.00'?floatPrice:''}}</text>
		<text v-if="showRen" class="ml-5 text-black">起/人</text>
	</text>
</template>

<script>

	export default {
		name: 'PriceFormat',
		props: {
			price: {
				type: String | Number,
				default: ""
			},
			// 粗体
			weight: {
				type: Boolean,
				default: false
			},
			intSize: {
				type: String,
				default: '32'
			},
			floatSize: {
				type: String,
				default: '22'
			},
			labelSize: {
				type: String,
				default: '20'
			},
			coupon: {
				type: Boolean,
				default: false
			},
			showRen: {
				type: Boolean,
				default: false
			},
		},
		data() {
			return {
				floatPrice: "",
				couponPrice: ""
			};
		},
		computed: {
			intPrice() {
				const str = this.price+'' //转成字符串
				const arr = str.split(".") //使用分隔符分割字符串成数组
				let tempStr = arr[1] ? arr[1] : '00' //如果小数点后有值就用该值，没有默认'00'
				this.floatPrice = tempStr.length === 1 ? '.'+tempStr + '0' : '.'+tempStr //小数点后只有一位的话补0
				// this.floatPrice = tempStr.length === 1 ? '.'+tempStr + '0' : '' //小数点后只有一位的话补0
				this.couponPrice = tempStr.length === 1 ? '.'+tempStr : ''
				return arr[0] || '0'
			},
			formatNumber(num) {
			    // 将数字转换为字符串，并检查小数点后两位  
			    const strNum = Number(num).toFixed(2); // 这将总是返回两位小数，即使它们是0  
			    const decimalPart = strNum.split('.')[1]; // 获取小数点后的部分  
			  
			    // 如果小数点后两位是00，则去掉这两位小数  
			    if (decimalPart === '00') {  
			        return strNum.split('.')[0]; // 返回整数部分  
			    } else {  
			        return strNum; // 否则返回原始的两位小数形式  
			    }  
			},  
		},
		watch: {

		}
	}
</script>

<style lang="scss" scoped>
	.normal {
		font-family: "黑体";
	}
	.font600 {
		font-weight: 600;
	}
</style>
